package com.csun.cmny.provider.service;

import com.csun.cmny.core.support.IService;
import com.csun.cmny.provider.device.csun.gateway.entity.CsunGatewayData;
import com.csun.cmny.provider.model.domain.DmcGatewayData;

import java.util.List;

/**
 * @Auther: chisj chisj@foxmal.com
 * @Date: 2019-01-16 13:28
 * @Description: the interface dmc gateway data service
 */
public interface DmcGatewayDataService extends IService<DmcGatewayData> {

    /**
     * query real gateway data by device id
     *
     * @param deviceId  the deivice id
     *
     * @return  the dmc gateway data
     */
    DmcGatewayData queryRealGatewayDataByDeviceId(Long deviceId);

    /**
     * update gatewaydata by device id
     *
     * @param deviceId  the device id
     *
     * @return  the int
     */
    Integer updateGatewayDataByDeviceId(Long deviceId);

    /**
     * delete gateway data by device id
     *
     * @param deviceId  the device id
     *
     * @return  the int
     */
    Integer deleteGatewayDataByDeviceId(Long deviceId);

    /**
     * 查询智能网关数据列表
     *
     * @return
     */
    List<CsunGatewayData> queryGateWayDataList();

    /**
     * save or update dmc gateway data
     *
     * @param dmcGatewayData    the dmc gateway data
     *
     * @return  the int.
     */
    Integer saveOrUpdate(DmcGatewayData dmcGatewayData);
}
